#include <stdio.h>
// #define count 5
// #define pi 3.14
// #define test  "helloworld"

// #define Min(a,b) a > b ? b:a
// #define ArraySize(a)  sizeof(a)/sizeof(a[0])

#define  func(x,y,z)  (x)*(y)+(z)
int main()
{
    //常量：程序运行时不可修改的量
    //const int b = 10;
    // 1、运行期不会变的量
    // 2、写代码期间是个变量
    // define 宏定义 ：定义一个文本为另外一个文本名
    //   在预处理阶段进行文本的替换

    // 优点： 提前代码的复用性
    // printf("%d\n" , count);

    // 宏函数 ： 简化代码
    // int a = 10;
    // int b = 20;
    // printf("%d\n",Min(a,b));

    // int c[] = {1,2,3,4,5,6,10,3,1,4};
    // printf("len: %ld\n",ArraySize(c));

    //宏函数使用时变量要加 ()

    int a = 1;
    int b = 2;
    int c = 3;
    printf("%d\n",func(a+b,b+c,a+c));
    return 0;
}